package com.chinairi.mall.model;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.chinairi.common.model.BaseModel;

import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 需求建议计划表
 * </p>
 *
 * @author gsl
 * @since 2020-10-20
 */
@TableName("PROJECT_PLAN_REQ_DETAIL")
public class ProjectPlanReqDetail extends BaseModel {

    private static final long serialVersionUID = 1L;

    /**
     * 计划详情主键
     */
    @TableId("PLAN_DETAIL_ID")
    private String planDetailId;

    /**
     * 需求计划ID
     */
    @TableField("PLAN_REQ_ID")
    private String planReqId;

    /**
     * 采购计划ID
     */
    @TableField("PLAN_PURCHASE_ID")
    private String planPurchaseId;

    /**
     * 物料编码
     */
    @TableField("PLAN_MAT_CODE")
    private String planMatCode;

    /**
     * 物料描述
     */
    @TableField("PLAN_MAT_DESCRIPTION")
    private String planMatDescription;

    /**
     * 工序
     */
    @TableField("PLAN_PROCESS")
    private String planProcess;

    /**
     * 计量单位
     */
    @TableField("PLAN_MEASURE_UNIT")
    private String planMeasureUnit;

    /**
     * 辅助计量单位
     */
    @TableField("PLAN_ASSIST_MEASURE")
    private String planAssistMeasure;

    /**
     * 需求数量
     */
    @TableField("PLAN_REQ_NUM")
    private Float planReqNum;

    /**
     * 现需求数量
     */
    @TableField("PLAN_REQ_NUM_NOW")
    private Float planReqNumNow;

    /**
     * 库存
     */
    @TableField("PLAN_STORAGE_NUM")
    private Float planStorageNum;

    /**
     * 平库数量
     */
    @TableField("PLAN_FLAT_NUM")
    private Float planFlatNum;

    /**
     * 库点编码
     */
    @TableField("SA_DBID")
    private String saDbid;

    /**
     * 已采购数量
     */
    @TableField("PLAN_ALREADY_BUY_NUM")
    private Float planAlreadyBuyNum;

    /**
     * 待采购数量
     */
    @TableField("PLAN_SHOULD_BUY_NUM")
    private Float planShouldBuyNum1;

    /**
     * 加入购物车数量
     */
    @TableField("PLAN_ADD_SHOPPING_CAR_NUM")
    private Float planAddShoppingCarNum;

    /**
     * 预计单价
     */
    @TableField("PLAN_ESTIMATE_PRICE")
    private BigDecimal planEstimatePrice;

    /**
     * 预计金额
     */
    @TableField("PLAN_ESTIMATE_MONEY")
    private BigDecimal planEstimateMoney;

    /**
     * 已领用数量
     */
    @TableField("PLAN_COLLECTED_NUM")
    private Float planCollectedNum;

    /**
     * 到货时间
     */
    @TableField("PLAN_ARRIVAL_TIME")
    private Date planArrivalTime;

    /**
     * 到货地点
     */
    @TableField("PLAN_ARRIVAL_ADDRESS")
    private String planArrivalAddress;

    /**
     * 质检地点
     */
    @TableField("PLAN_QUALITY_ADDRESS")
    private String planQualityAddress;

    /**
     * 可改用数量
     */
    @TableField("PLAN_CHANGE_NUM")
    private Float planChangeNum;

    /**
     * 可代用数量
     */
    @TableField("PLAN_REPLACE_NUM")
    private Float planReplaceNum;

    /**
     * 当前状态
     */
    @TableField("PLAN_STATUS")
    private String planStatus;

    /**
     * 排序
     */
    @TableField("PLAN_SEQ")
    private Integer planSeq;

    /**
     * 创建人
     */
    @TableField("CREATE_USER")
    private String createUser;

    /**
     * 创建时间
     */
    @TableField("CREATE_TIME")
    private Date createTime;

    /**
     * 修改人
     */
    @TableField("UPDATE_USER")
    private String updateUser;

    /**
     * 修改时间
     */
    @TableField("UPDATE_TIME")
    private Date updateTime;

    /**
     * 审核人
     */
    @TableField("APPROVE_USER")
    private String approveUser;

    /**
     * 审核时间
     */
    @TableField("APPROVE_TIME")
    private Date approveTime;

    /**
     * 审核状态
     */
    @TableField("APPROVE_STATUS")
    private String approveStatus;

    /**
     * 机构代码
     */
    @TableField("ORG_CODE")
    private String orgCode;

    /**
     * 待采购数量
     */
    @TableField(exist = false)
    private Float planShouldBuyNum;

    /**
     * 是否框架产品
     */
    @TableField(exist = false)
    private boolean frame;

    public String getPlanDetailId() {
        return planDetailId;
    }

    public void setPlanDetailId(String planDetailId) {
        this.planDetailId = planDetailId;
    }
    public String getPlanReqId() {
        return planReqId;
    }

    public void setPlanReqId(String planReqId) {
        this.planReqId = planReqId;
    }
    public String getPlanPurchaseId() {
        return planPurchaseId;
    }

    public void setPlanPurchaseId(String planPurchaseId) {
        this.planPurchaseId = planPurchaseId;
    }
    public String getPlanMatCode() {
        return planMatCode;
    }

    public void setPlanMatCode(String planMatCode) {
        this.planMatCode = planMatCode;
    }
    public String getPlanMatDescription() {
        return planMatDescription;
    }

    public void setPlanMatDescription(String planMatDescription) {
        this.planMatDescription = planMatDescription;
    }
    public String getPlanProcess() {
        return planProcess;
    }

    public void setPlanProcess(String planProcess) {
        this.planProcess = planProcess;
    }
    public String getPlanMeasureUnit() {
        return planMeasureUnit;
    }

    public void setPlanMeasureUnit(String planMeasureUnit) {
        this.planMeasureUnit = planMeasureUnit;
    }
    public String getPlanAssistMeasure() {
        return planAssistMeasure;
    }

    public void setPlanAssistMeasure(String planAssistMeasure) {
        this.planAssistMeasure = planAssistMeasure;
    }
    public Float getPlanReqNum() {
        return planReqNum;
    }

    public void setPlanReqNum(Float planReqNum) {
        this.planReqNum = planReqNum;
    }
    public Float getPlanReqNumNow() {
        return planReqNumNow;
    }

    public void setPlanReqNumNow(Float planReqNumNow) {
        this.planReqNumNow = planReqNumNow;
    }
    public Float getPlanStorageNum() {
        return planStorageNum;
    }

    public void setPlanStorageNum(Float planStorageNum) {
        this.planStorageNum = planStorageNum;
    }
    public Float getPlanFlatNum() {
        return planFlatNum;
    }

    public void setPlanFlatNum(Float planFlatNum) {
        this.planFlatNum = planFlatNum;
    }
    public String getSaDbid() {
        return saDbid;
    }

    public void setSaDbid(String saDbid) {
        this.saDbid = saDbid;
    }
    public Float getPlanAlreadyBuyNum() {
        return planAlreadyBuyNum;
    }

    public void setPlanAlreadyBuyNum(Float planAlreadyBuyNum) {
        this.planAlreadyBuyNum = planAlreadyBuyNum;
    }
    public Float getPlanShouldBuyNum() {
        return planShouldBuyNum;
    }

    public void setPlanShouldBuyNum(Float planShouldBuyNum) {
        this.planShouldBuyNum = planShouldBuyNum;
    }
    public Float getPlanAddShoppingCarNum() {
        return planAddShoppingCarNum;
    }

    public void setPlanAddShoppingCarNum(Float planAddShoppingCarNum) {
        this.planAddShoppingCarNum = planAddShoppingCarNum;
    }
    public BigDecimal getPlanEstimatePrice() {
        return planEstimatePrice;
    }

    public void setPlanEstimatePrice(BigDecimal planEstimatePrice) {
        this.planEstimatePrice = planEstimatePrice;
    }
    public BigDecimal getPlanEstimateMoney() {
        return planEstimateMoney;
    }

    public void setPlanEstimateMoney(BigDecimal planEstimateMoney) {
        this.planEstimateMoney = planEstimateMoney;
    }
    public Float getPlanCollectedNum() {
        return planCollectedNum;
    }

    public void setPlanCollectedNum(Float planCollectedNum) {
        this.planCollectedNum = planCollectedNum;
    }
    public Date getPlanArrivalTime() {
        return planArrivalTime;
    }

    public void setPlanArrivalTime(Date planArrivalTime) {
        this.planArrivalTime = planArrivalTime;
    }
    public String getPlanArrivalAddress() {
        return planArrivalAddress;
    }

    public void setPlanArrivalAddress(String planArrivalAddress) {
        this.planArrivalAddress = planArrivalAddress;
    }
    public String getPlanQualityAddress() {
        return planQualityAddress;
    }

    public void setPlanQualityAddress(String planQualityAddress) {
        this.planQualityAddress = planQualityAddress;
    }
    public Float getPlanChangeNum() {
        return planChangeNum;
    }

    public void setPlanChangeNum(Float planChangeNum) {
        this.planChangeNum = planChangeNum;
    }
    public Float getPlanReplaceNum() {
        return planReplaceNum;
    }

    public void setPlanReplaceNum(Float planReplaceNum) {
        this.planReplaceNum = planReplaceNum;
    }
    public String getPlanStatus() {
        return planStatus;
    }

    public void setPlanStatus(String planStatus) {
        this.planStatus = planStatus;
    }
    public Integer getPlanSeq() {
        return planSeq;
    }

    public void setPlanSeq(Integer planSeq) {
        this.planSeq = planSeq;
    }
    public String getCreateUser() {
        return createUser;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }
    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
    public String getUpdateUser() {
        return updateUser;
    }

    public void setUpdateUser(String updateUser) {
        this.updateUser = updateUser;
    }
    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
    public String getApproveUser() {
        return approveUser;
    }

    public void setApproveUser(String approveUser) {
        this.approveUser = approveUser;
    }
    public Date getApproveTime() {
        return approveTime;
    }

    public void setApproveTime(Date approveTime) {
        this.approveTime = approveTime;
    }
    public String getApproveStatus() {
        return approveStatus;
    }

    public void setApproveStatus(String approveStatus) {
        this.approveStatus = approveStatus;
    }
    public String getOrgCode() {
        return orgCode;
    }

    public void setOrgCode(String orgCode) {
        this.orgCode = orgCode;
    }

    public Float getPlanShouldBuyNum1() {
        return planShouldBuyNum1;
    }

    public void setPlanShouldBuyNum1(Float planShouldBuyNum1) {
        this.planShouldBuyNum1 = planShouldBuyNum1;
    }

    public boolean isFrame() {
        return frame;
    }

    public void setFrame(boolean frame) {
        this.frame = frame;
    }


    @Override
    public String toString() {
        return "ProjectPlanReqDetail{" +
                "planDetailId='" + planDetailId + '\'' +
                ", planReqId='" + planReqId + '\'' +
                ", planPurchaseId='" + planPurchaseId + '\'' +
                ", planMatCode='" + planMatCode + '\'' +
                ", planMatDescription='" + planMatDescription + '\'' +
                ", planProcess='" + planProcess + '\'' +
                ", planMeasureUnit='" + planMeasureUnit + '\'' +
                ", planAssistMeasure='" + planAssistMeasure + '\'' +
                ", planReqNum=" + planReqNum +
                ", planReqNumNow=" + planReqNumNow +
                ", planStorageNum=" + planStorageNum +
                ", planFlatNum=" + planFlatNum +
                ", saDbid='" + saDbid + '\'' +
                ", planAlreadyBuyNum=" + planAlreadyBuyNum +
                ", planShouldBuyNum1=" + planShouldBuyNum1 +
                ", planAddShoppingCarNum=" + planAddShoppingCarNum +
                ", planEstimatePrice=" + planEstimatePrice +
                ", planEstimateMoney=" + planEstimateMoney +
                ", planCollectedNum=" + planCollectedNum +
                ", planArrivalTime=" + planArrivalTime +
                ", planArrivalAddress='" + planArrivalAddress + '\'' +
                ", planQualityAddress='" + planQualityAddress + '\'' +
                ", planChangeNum=" + planChangeNum +
                ", planReplaceNum=" + planReplaceNum +
                ", planStatus='" + planStatus + '\'' +
                ", planSeq=" + planSeq +
                ", createUser='" + createUser + '\'' +
                ", createTime=" + createTime +
                ", updateUser='" + updateUser + '\'' +
                ", updateTime=" + updateTime +
                ", approveUser='" + approveUser + '\'' +
                ", approveTime=" + approveTime +
                ", approveStatus='" + approveStatus + '\'' +
                ", orgCode='" + orgCode + '\'' +
                ", planShouldBuyNum=" + planShouldBuyNum +
                ", frame=" + frame +
                '}';
    }
}
